Enterprise Resource Planning (ERP) systems manage internal and external resources of an organization including tangible assets, financial resources, materials, and human resources. ERP systems facilitate the flow of information between all organizational/business functions inside the boundaries of the organization and manage the connections to outside stakeholders. An ERP system may either reside on a centralized server or be distributed across modular hardware and software units that provide the services and communicate over one or more networks. The distributed design may allow an organization to assemble modules from different vendors without the need for the placement of multiple copies of complex and expensive computer systems in areas which do not use their full capacity.
In a traditional ERP system, a Chart of Accounts (COA) represents a combination of dimensions and may be persisted as a physical list of possible combinations. This means all valid combinations of account codes and other segments are also persisted, which may take hours or days to generate and may become impossible after a certain number of combinations. Some systems move the other segments of the combination outside of the actual COA and instead add them simply as reporting hierarchies or other pieces of data that get tagged on during usage. While such mechanisms may reduce the need for processing resources, they do not allow the granular level of control necessary at an individual combination level that is desired by many public sector companies.